package data

import (
	"devops/models"
)

type PageResponse struct {
	CurPage int `json:"ur_page"`			//当前页码
	CurPageSize int `json:"cur_page_size"`	//当前每页数据量
	Total int `json:"total"`				//总数据量
	TotalPage int `json:"total_page"`		//总页码
}

type GetCIResponse struct {
	PageResponse
	Data []models.ProjectCI
}

type SuccessGetCI struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data GetCIResponse `json:"data" example:""` // 返回说明文字
}

type SuccessGetOneCI struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data models.GetCIOneResp `json:"data" example:""` // 返回说明文字
}

type SuccessGetOneCIBaseInfo struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data models.CI   `json:"data"` // 返回说明文字
}

type SuccessCreateCI struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data models.CI `json:"data" example:""` // 返回说明文字
}

type FailCreateCI struct {
	Code int         `json:"code" example:"13002"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"创建失败"`	 // 提示信息
	Data string 	 `json:"data" example:"失败具体原因xxxx"` // 错误具体信息
}

type FailUpdateCI struct {
	Code int         `json:"code" example:"11002"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"更新失败"`	 // 提示信息
	Data string 	 `json:"data" example:"失败具体原因xxxx"` // 错误具体信息
}

type SuccessDeleteCI struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data string `json:"data" example:"删除成功"` // 返回说明文字
}


type FailDeleteCI struct {
	Code int         `json:"code" example:"11001"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"删除失败"`	 // 提示信息
	Data string 	 `json:"data" example:"失败具体原因xxxx"` // 错误具体信息
}

type SuccessGetCiEnvs struct {
	Code int         	 `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      	 `json:"message" example:"请求成功"`	 // 提示信息
	Data []*models.CiEnv `json:"data" example:""` // 返回说明文字
}


type SuccessGetCiEnv struct {
	Code int         	 `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      	 `json:"message" example:"请求成功"`	 // 提示信息
	Data *models.CiEnv `json:"data" example:""` // 返回说明文字
}


type SuccessUpdateCiEnv struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data string 	 `json:"data" example:"更新成功"` // 错误具体信息
}

type FailUpdateCiEnv struct {
	Code int         `json:"code" example:"11002"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"更新失败"`	 // 提示信息
	Data string 	 `json:"data" example:"失败具体原因xxxx"` // 错误具体信息
}


type SuccessGetDiscarder struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data models.CiDiscarder 	 `json:"data" example:""` // 错误具体信息
}

type SuccessSetDiscarder struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data string 	 `json:"data" example:"设置成功"` // 错误具体信息
}


type FailSetDiscarder struct {
	Code int         `json:"code" example:"11002"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"设置失败"`	 // 提示信息
	Data string 	 `json:"data" example:"失败具体原因xxx"` // 错误具体信息
}

type SuccessGetTiming struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data models.GetCiTimingResp 	 `json:"data" example:""` // 错误具体信息
}

type SuccessSetTiming struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data string 	 `json:"data" example:"设置成功"` // 错误具体信息
}


type FailSetTiming struct {
	Code int         `json:"code" example:"11002"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"设置失败"`	 // 提示信息
	Data string 	 `json:"data" example:"失败具体原因xxx"` // 错误具体信息
}

type SuccessToJson struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data map[string]interface{} `json:"data" example:""` // 返回转换后的json
}

type FailToJson struct {
	Code int         `json:"code" example:"13000"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"转换失败"`	 // 提示信息
	Data string `json:"data" example:""` // 错误具体信息
}

type SuccessGithubBranches struct {
	Code int         `json:"code" example:"200"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"请求成功"`	 // 提示信息
	Data []map[string]string `json:"data" example:""` // 返回转换后的json
}

type FailGithubBranches struct {
	Code int         `json:"code" example:"13001"`		 // 业务响应状态码
	Msg  string      `json:"message" example:"open api 请求失败"`	 // 提示信息
	Data string `json:"data" example:""` // 错误具体信息
}
